import axios from "axios"

// 创建请求对象
export const request = axios.create({
  baseURL: "https://conduit.productionready.io"
})

// 通过插件机制获取到上下文对象（query, params,req,res,app,store...）
// 插件导出函数 必须作为 default成员。所以request只能按需到处
export default ({store}) => {
  console.log(store)
  // 请求拦截器---任何请求都要经过
  // 可以做一些公共的业务处理。例如统一设置 token
  request.interceptors.request.use(function (config) {
    // Do something before request is sent
    const { user } = store.state
    // 请求会经过这里
    // 修改请求配置对象
    console.log(123)
    if(user && user.token){
      config.headers.Authorization = `Token ${user.token}`
    }
    // 返回config 请求配置对象
    return config;
  }, function (error) {
    // 如果请求失败（此时请求还没有发出去）就会进入这里
    // Do something with request error
    return Promise.reject(error);
  });
}
